Session collaborator

ABSTRACT

A method and system for establishing an electronic communication channel between an agent of a first entity and a second entity is provided, including: linking the second entity to the agent of the first entity when a trigger is sent by the second entity; providing one or more software programs over the electronic communication channel to the second entity; initiating an exchange by the agent of the first entity to the second entity; and sending one or more messages over the communication channel between the agent from the first entity and the second entity. The system includes a database containing a link between the agent of the first entity and the second entity. The system also includes a server configured to establish an electronic communication channel between the agent of the first entity and the second entity when a trigger is sent by the second entity.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/973,489 (filed May 7, 2018), which is a continuation of U.S. patentapplication Ser. No. 12/494,536 (filed Jun. 30, 2009), the entirety ofwhich are hereby incorporated herein by reference.

FIELD OF THE TECHNOLOGY

The present disclosure relates generally to communications over anetwork, and more particularly, to web user interface sessions andsharing of session environment information.

DESCRIPTION OF THE RELATED ART

The dissemination of information within society is vital to every daylife. For instance, many companies rely on the flow of data betweenbusinesses in commercial transactions. Likewise, consumers use variouscommunication channels such as public switched telephone networks(PSTN), cellular networks, and wireless networks, etc. to communicateall types of data for personal or business uses. One example of acommunication channel that is commonly used in the dissemination ofinformation is the Internet. As such, the Internet has become a veryhelpful tool for engaging in commercial as well as everydaytransactions. This has lead to the development of many software andinternet applications used in connection with e-commerce transactions.

Conventional methods for providing information to a customer typicallyinvolved passive techniques. For example, a customer requiringinformation about a product traditionally had to make the initiative tosearch for a product and contact a representative via telephone and/ore-mail with questions. Thus, a representative in a passive system mustdevelop a wait and see approach. In another example, a company wishingto provide new or additional information had no direct way toproactively contact individual customers. Traditional methods ofrelaying the information typically involved providing a new web page oradding new content on an existing page. Either technique required thecustomer to locate the message themselves. These techniques lackedexpress customer service and convenience for customers that hadimmediate needs. As such, it may be desirable to provide a system and amethod which allows various representatives of a company to collaboratewith its customers in a push mode real time environment and/or anasynchronous environment.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is described in detail below with reference to theattached drawing figures, which are incorporated by reference herein andwherein:

FIG. 1 is a diagram illustrating an exemplary embodiment of theinvention in a real time collaboration session;

FIG. 2 is a diagram illustrating an exemplary embodiment of theinvention in an asynchronous collaboration session;

FIG. 3 is a flowchart illustrating a process for communicating messagesbetween agents of a vendor and a customer in a real time environment;

FIG. 4A is a flowchart illustrating a process for communicating messagesbetween agents of a vendor and a customer in an asynchronous timeenvironment;

FIG. 4B is a flowchart illustrating a process for communicating messagesbetween agents of a vendor and a customer in a combination real time andasynchronous time environment;

FIG. 5 is a flowchart illustrating a process in accordance withexemplary embodiments of the invention;

FIG. 6 is a diagram illustrating an exemplary embodiment in which anagent interacts with a customer using various mode of communications;

FIG. 7 is a diagram illustrating an exemplary embodiment in which amessage is delivered through the web to a customer;

FIG. 8 is a diagram illustrating an exemplary embodiment in which thecustomer places an order with an agent of the vendor;

FIG. 9 is a diagram illustrating an exemplary embodiment in which acustomer requests shopping assistance from an agent of the vendor; and

FIGS. 10A-10C are screen shots of chat sessions between one or moreagents of the vendor and a customer.

FIG. 11 is a screen shot of chat sessions between one or more agents ofthe vendor and a customer utilizing video conferencing.

FIG. 12 is a screen shot of chat sessions between one or more agents ofthe vendor and a customer in a bill paying environment.

DETAILED DESCRIPTION

While the invention is susceptible to various modifications andalternative forms, certain embodiments are shown by way of example inthe drawings and these embodiments will be described in detail herein.It should be understood, however, that this disclosure is not intendedto limit the invention to the particular forms described, on thecontrary, the invention is intended to cover all modifications,alternatives, and equivalents falling within the spirit and scope of theinvention defined by the appended claims.

FIG. 1 illustrates a diagram of an example of the session collaborationnetwork 100. The session collaboration network 200 may include acustomer 102 and a vendor 104. The vendor 104 may include a plurality ofagents 106, 108, 110. The agents 106, 108, 110 may be employees orconsultants for the vendor 104 such as a product specialist 106, amarketing specialist 108 and/or an account manager 110.

The product specialist 106 may include at least one individual who isfamiliar with the features and other pertinent information correspondingto the products with which a customer might require assistance. Themarketing specialist 108 may include at least one individual who handlesthe marketing of products, services, etc. for a vendor. The accountmanager 110 may include at least one individual who manages one or moreaccounts of a customer including, for example, receiving and supplyingquotes, provide browsing support, and directing a customer to anotheragent. In order for the plurality of agents 106, 108, 110 to manage acustomer's account, the agent may be linked to the customer 102 via adatabase (not shown) which may store a customer's connection to anagent. Alternatively, if a customer is not previously linked to anagent, one or more agents may be provided or made available to thecustomer. Although only three agents are listed, other agents may beused to provide customer support such as field account executives andfield agents. Moreover, although the agents are described with specificfunctions, one agent may perform the function of other agents.

The agents 106, 108, 110 may transmit and/or receive messages via themessage queue 112. The messages may be transmitted to and from theagents using conventional data transmission techniques such as pollingthe messages, broadcasting the messages, or any data transmissiontechnique known by one of ordinary skill in the art. The message queue112 may be managed by a server 114 which may allow messages to be sentand received to and from a customer 102. The server 114 may be used toconnect to a customer 102 via the Internet.

The server 114 may also host a vendor website which a customer 102 mayaccess via a personal computer (PC) running a web browser such asInternet Explorer, Firefox, Safari, etc. The customer 102 may alsoaccess a vendor website using other devices such as for example, a handheld device (e.g. PDA's, smartphones, etc.) capable of retrieving andviewing the vendor website. At the website, the customer 102 may examinethe various products and services listed on the website. In turn, asshown by the message exchange 116, the agents 106, 108, 110 mayproactively communicate with the customer 102 to assist with anyquestions and comments that the customer 102 may have as they review theproducts and services displayed on the website.

As shown in FIG. 1, the message exchange 116 describes a process inwhich the agents 106, 108, 110 of a vendor 104 communicate with acustomer 102. The customer 102 may access the vendor website and whilebrowsing, may select various tabs and options on the website. Thecustomer 102 may also access a personalized account by, for example,providing a user name and password. In turn, the customer's activity onthe website may trigger a series of messages to the server which theagents 106, 108, 110 may respond. This series of communications betweenthe customer 102 and the agents 106, 108, 110 of the vendor 104represent an example of a real time collaboration session. During thisreal time collaboration session, the PC of customer 102 may continuouslyping the server 114 to check if there are any available messages. Ifthere are any messages, these messages may be delivered, interpreted andexecuted on the PC of the customer 102. Although only one customer isshown, the agents may communicate with more than one customer in thesame collaboration session.

FIG. 2 illustrates a diagram of an example of the session collaborationnetwork 200 in an asynchronous environment. Similar to FIG. 1, thesession collaboration network 200 may include a vendor 104 including aplurality of agents 106, 108, 110, a message queue 112, and a server114. The server 112 maybe connected to the internet and may communicatewith a customer 102 via a vendor webpage. When the customer 102 accessesthe vendor webpage to examine the various products and services listedon the website a “Get Message” signal may be transmitted from thecustomer to the server. As shown by the message exchange 202, the agents106, 108, 110 may communicate with the customer 102 to assist with anyquestions and comments that the customer 102 may have. In this example,however, the exchange may be preset and stored in a mailbox 204. Thatis, the agents 106, 108, 110 may have predetermined various products,promotions or anticipated questions that the customer 102 may ask. Whenthe server 114 receives the get message signal from the customer 102,the predetermined messages from the agents 106, 108, 110 stored in themailbox 204 may all be sent to the customer 102. Although described as amailbox, one of ordinary skill would understand that a database or anyrepository of information may be used to store the preset messagesand/or any other information necessary.

FIG. 3 illustrates a flowchart 300 for communicating messages betweenagents of a vendor and a customer in a real time environment. Forexample, a real-time collaboration session may transmit messages in thefollowing fashion (as shown in FIG. 1). At block 302, a “Get Message”signal is transmitted from the customer 102 to the server 114 for theagents 106, 108, 110. At block 304, this “Get Message” signal may notifythe agents 106, 108, 110 that a customer 102 is present on the websiteand may need some assistance. At block 306, the agents 106, 108, 110 mayrespond with a message to the customer 102. At block 308, the content ofthe message may be displayed to the customer by running the message onthe PC of the customer 102 and the customer 102 may choose to respond tothe agent 106, 108, 110. This message indicates to the customer 102 thatthe agents 106, 108, 110 are available to communicate with the customer102 and assist the customer 102 with its needs. Any type of content maybe transmitted in these messages such as audio data, image data, textdata, etc. FIG. 1 shows three iterations in a series of exchangesbetween a customer 102 and agents 106, 108, 110 of a vendor 104,however, this series of exchanges may include any number ofcommunications necessary for the agents 106, 108, 110 of the vendor 104to communicate with the customer 102.

FIG. 4A illustrates an asynchronous collaboration session, as shown inFIG. 2. At block 402, a “Get Message” signal may be transmitted from thecustomer 102 to the server 114. At block 404, the Get Message signal maynotify the system that a customer 102 is present on the website. Atblock 406 a predetermined response from the agents 106, 108, 110 may beretrieved from a database such as a mailbox and sent to the customer102. In one example, the predetermined response from the agents 106,108, 110 may be generated based on a customer's previous browsinghistory or preferences previously selected and stored in a database. Atblock 408, the content of the messages may be displayed to the customer102 by running the message on the customer's PC.

Alternatively, FIG. 4B illustrates a session in which a combination ofan asynchronous session and a real time session is used. At block 452, a“Get Message” signal may be transmitted from the customer 102 to theserver 114. At block 454, the Get Message signal may notify the systemthat a customer 102 is present on the website. At block 456 apredetermined response from the agents 106, 108, 110 may be retrievedfrom a database such as a mailbox and sent to the customer 102. At block458, the content of the message may be displayed to the customer byrunning the message on the PC of the customer 102. In the case of acombination asynchronous and real time session, the agents 106, 108, 110may then, on the next “Get Message” signal, communicate with thecustomer 102 in a real time collaboration session as described above.Although the combination is described with the asynchronous sessionfirst, followed by the real time session, the opposite may also be true.For example, a customer may first communicate with an agent in a realtime collaboration session. The agent may then collect products torecommend to the customer based on the initial conversation, currentand/or previous browsing history, or customer preferences and store theinformation in a mailbox to send to the customer on a subsequent “GetMessage” signal.

Shared Message Queue

Referring again to FIGS. 1 and 2, at node 1, a shared message queue maybe used as a message queuing tool 112 by agents 106, 108, 110 to assistcustomers 102. In one example, the shared message queue may include ashared message/instruction queue system which allows at least one agent106, 108, 110 from the server side (e.g. agents of the vendor) to assistthe customers 102 on the client application in a collaborative manner.For example, a customer 102 may need to build a data center which mayrequire various products and services. As such, a product specialist maybe present to answer technical and/or product specific questions thatthe customer 102 may have. An account manager may assist the customer102 with pricing of the products, browsing support, etc. Each of theagents required by the customer 102 may use the shared message queue tocommunicate with the customer 102 and with each other. In one example,the customer 102 may communicate with more than one agent during acommunication session.

Security & Authentication

At node 2 in FIGS. 1 and 2, the communication system may provideprovisions for security and authentication of a message during anexchange. For example, a customer 102 may be required to log in beforean agent 106, 108, 110 is able to initiate a conversation with thecustomer 102. Methods for providing security and authentication throughlog-ins are generally known in the art and will not be described furtherhere. After a customer 102 is verified, all messages received from acustomer 102 may be validated and directed to specific agents 106, 108,110 based on a link between the customer and a specific agent stored ina database. If no link has been previously established an agent may beassigned to the customer.

Communication Channel Between Server and Client

At node 3, with reference to FIGS. 1-4B, communications between a vendor104 via its agents 106, 108, 110 and the customer 102 may be achieved invarious ways such as, for example, HTTP communication or UDPcommunication. Specific communication schemes are well known in the artand will not be described further. In some embodiments, the agents 106,108, 110 of the vendor 104 may initiate a conversation with the customerin a “push mode.” That is, the agents 106, 108, 110 may give directsupport and recommendations to a customer 102 as opposed to a passivemode in which the customer 102 merely searches for answers on their own.As a result, a collaborative session is created.

At node 4, the message channel and delivery module described inconnection with FIGS. 1-4B allows for generic messages to be initializedfrom the vendor 104 (at the server side) and sent to the customer 102.In some implementations, various other applications may be utilized inthe system shown in FIGS. 1-4B for either a real-time sessionenvironment or an asynchronous session environment or a combination. Theapplications may include: search assistance in which an agent may assista customer search for specific products or services; shopping cartassistance in which an agent may assist a customer with various shoppingtools such as pricing or stocking information; navigation assistance inwhich an agent may assist a customer navigate through a website tospecific products or services; compare assistance in which an agent mayassist a customer compare one or more products or services;configuration assistance in which an agent may assist a customer invarious configuration schemes such as providing information aboutnecessary components to create a secure server; or other applicationthat utilizes real-time or asynchronous sessions.

Message Interpretation

At node 5 with reference to FIGS. 1-4B, the customer 102 (e.g. theclient) may utilize a message interpretation program for interpretingmessages sent by the agents 106, 108, 110 of the vendor 104. The messageinterpretation programs may be in the form of an applet or softwareprogram designed to interpret one or more messages sent from the serverside. The message interpretation programs may be implemented in avariety of ways. For example, the message interpretation module may be apiece of java script, silver light code, or flash code running in aclient web browser, a module of code running on a television ortelevision converter, or Digital Video Recorder (DVR); or any type ofcode running on a user device (e.g. personal digital assistant (PDA),smart phone and other portable and/or mobile computing device).

Alternatively, the software program may be a downloadable program thatis constantly running in the background of the computing device. Acustomer may be prompted by the program when new information stored in amailbox is ready to be transmitted. The downloaded program may also beinitialized when a customer accesses a vendor website.

FIG. 5 illustrates a flowchart describing a process 500 in accordancewith an exemplary embodiment of the invention. At block 502, acommunication channel may be established between at least one agent 106,108, 110 of a vendor 104 and a customer 102. At block 504, aconversation is initiated by the at least one agent 106, 108, 110 withthe customer 102. At block 506, the at least one agent 106, 108, 110 mayassist the customer 102 by sending messages over the communicationchannel as the customer 102 reviews the products and services displayedon the website of the vendor.

FIG. 6 illustrates a diagram 600 of an example of where an agent 602such as an account manager may interact with a customer 604 usingvarious modes of communication such as a telephone 606, a web browser608 and an e-mail 610 in either a real time environment, an asynchronousenvironment or a combination as described in FIGS. 1, and 2. In someembodiments, the agent 602 may utilize a telephone 606 and/or e-mail 610to help the customer 604 locate certain products and services on thevendor website. As a result, the agent 602 may send the customer 604 toa location on the website that the customer 604 would like to be routed.For example, the agent 602 may send the customer 604 to a specificproduct page on the vendor website. Alternatively, the agent 602 maysend the customer 604 to a content page with an anchor to other productpages. As a further alternative, the agent 602 may present the customer604 with a “popup” web page.

FIG. 7 illustrates a diagram 700 of an example where a message isdelivered through the web to a customer 702 in either a real timeenvironment or an asynchronous environment. Traditionally, a message maybe presented as a new web page 704 in which a customer must navigate towithin the vendor website. Instead, the message, or new product page maybe pushed from the server side using an overlay 706 over a currentwebpage that the customer 702 is viewing. Presenting the message byoverlaying the message over web page allows great flexibility in theformat of the content and delivery to the target recipient. Otherexamples of message formats that may be utilized include a login messageformat, an ajax message format, and adhoc message format.

FIG. 8 illustrates a diagram 800 of an example in which the customer 802places an order with an agent 804 of the vendor in either a real timeenvironment or an asynchronous environment. The customer 802 may placean order for a product using a telephone 806 or using a web browser 810(on the web page of the vendor). In response, the agent 804 such as anaccount manager may display the order through the web page of the vendorand allow the customer 802 to review and confirm the placed order.Thereafter, the product may be placed in a shopping cart list 808. Oncein the shopping cart list 808, the customer may check if the product isavailable and then have the product shipped to the designated address ofthe customer 802.

FIG. 9 illustrates a diagram 900 of an example where the customer 902may request shopping assistance from an agent 904 such as a productspecialist in either a real time environment or an asynchronousenvironment. The customer 902 may review and compare various products onthe vendor website. The agent 904 may provide a pre-selected set ofproducts stored in a database 910 for the customer 902 to evaluate forpurchasing. The user may add or delete a product to and from thepre-selected list before adding the items to a shopping cart. In someimplementations, the preferences for a customer 902 may be determinedbased on the shopping habits of the customer 902 over a period of timesuch as one or more days, months, or years and stored in the database910. Alternatively, the recommendation list may be generated based onthe current set of products selected by the customer 902 listed in theshopping cart list.

FIGS. 10A-10C provide exemplary embodiments, as a screen shot, of thegraphical user interface (GUI) for facilitating conversations betweenagents of a vendor and a customer in a real time environment (asdescribed in FIGS. 1 and 2). FIG. 10A shows a text window 1001 thatfacilitates a conversation between at least one agent of the vendor anda customer. The agent and the customer may converse using the textwindow in order to discuss questions related to, for example, productsand pricing. FIG. 10A also shows a set of one or more selectable menuitems 1002-1006 representing various products for purchase by acustomer. The items may be products selected by a user during a shoppingsession or may be a pre-identified list presented from the agent to thecustomer. The customer may be able to collapse and expand attributepanels as shown in item 1002, to show additional specifications aboutthe item. FIG. 10A also shows an add to cart menu button 1010 thatplaces a product onto a shopping cart list. Further, FIG. 10A shows a“quote it” menu button 1012 that retrieves a price quote for a specifiedproduct by the customer.

FIG. 10B illustrates a case in which an agent may recommend additionalproducts 1102 to the customer. In such a case, the agent may use thetext window 1001 to recommend to a customer, in real time, anotherproduct for consideration. FIG. 100 shows a GUI 1104 for facilitatingchat sessions between the at least one agent of the vendor and thecustomer. The GUI 1104 may be executed within an internal softwareapplication (e.g. Sales Productivity Suite (SPS)) of the vendor whileother software applications are executing. The agent may use the GUI1104 to search for items to recommend, remove items from a list, adjustprice quotes, and provide the customer with other useful informationsuch as the product availability.

FIG. 11 illustrates an alternative in which video conferencing is usedfor communication between an agent and a customer. Similar thedescription of FIGS. 10A-10C, an agent may interact with a customer byrecommending products, adjust price quotes, and provide productinformation using video conferencing in place of, or in addition to atext window.

FIG. 12 illustrates another example in which a real time, asynchronous,or combination session collaborator may be used. FIG. 12 illustrates anexample in which an accounts payable representative may show a customeran invoice to answer any billing questions that a customer may have.

Although the session collaboration network is described above as relatedto an e-commerce network, one of ordinary skill would understand thatthe system described may be utilized relative to a variety of othernetworks such as general information networks in which an agent of avendor or otherwise a first entity may initiate a communication channelwith a user or otherwise a second entity to provide information such as,for example, medical advice.

Many different arrangements of the various components depicted, as wellas components not shown, are possible without departing from the spiritand scope of the present invention. Embodiments of the present inventionhave been described with the intent to be illustrative rather thanrestrictive. Alternative embodiments will become apparent to thoseskilled in the art that do not depart from its scope. A skilled artisanmay develop alternative means of implementing the aforementionedimprovements without departing from the scope of the present invention.

It will be understood that certain features and sub combinations are ofutility and may be employed without reference to other features and subcombinations and are contemplated within the scope of the claims. Notall steps listed in the various figures need be carried out in thespecific order described.

What is claimed is:
 1. A method for establishing an electroniccommunication channel between a plurality of agents of a first entityand a second entity, comprising: receiving, at one or more processors,an indication of a trigger associated with the second entity; linking,by the one or more processors, the second entity to the plurality ofagents of the first entity when in response to the indication of thetrigger; providing, by the one or more processors, a software programconfigured to automatically initiating a message exchange over theelectronic communication channel to the second entity; and automaticallyinitiating, by the one or more processors, the message exchange over theelectronic communication channel in response to receiving an indicationthat a condition for the message exchange has been satisfied by thesecond entity, wherein initiating the message exchange includesautomatically sending at least one of a plurality of messages previouslystored in a repository for sending to the second entity uponsatisfaction of the condition.
 2. The method of claim 1, furthercomprising: receiving, at the one or more processors, a response messagefrom the second entity; and sending, by the one or more processors, theresponse message to one or more of the plurality of agents of the firstentity in a collaboration session.
 3. The method of claim 1, wherein thesoftware program is configured to automatically initiate the messageexchange by sending signals to get messages from the one or moreprocessors.
 4. The method of claim 1, wherein the condition for themessage exchange includes the second entity accessing a web pageassociated with the first entity.
 5. The method of claim 4, wherein thetrigger is a login by the second entity on a website associated with theweb page.
 6. The method of claim 1, wherein the message exchangeincludes a conversation between the plurality of agents of the firstentity and the second entity conducted in a real-time collaborationsession via the electronic communication channel.
 7. The method of claim1, wherein the message exchange includes a conversation between theplurality of agents of the first entity and the second entity conductedin an asynchronous collaboration session via the electroniccommunication channel.
 8. The method of claim 1, wherein the at leastone of the plurality of messages includes information regarding apre-selected set of products or services selected for presentation tothe second entity and associated with the condition.
 9. A system forestablishing an electronic communication channel between a plurality ofagents of a first entity and a second entity comprising: one or moreprocessors; and a non-transitory computer-readable mediumcommunicatively connected to the one or more processors and storingexecutable instructions that, when executed by the one or moreprocessors, cause the system to: receive an indication of a triggerassociated with the second entity; link the second entity to theplurality of agents of the first entity when in response to theindication of the trigger; provide a software program configured toautomatically initiating a message exchange over the electroniccommunication channel to the second entity; and automatically initiatethe message exchange over the electronic communication channel inresponse to receiving an indication that a condition for the messageexchange has been satisfied by the second entity, wherein initiating themessage exchange includes automatically sending at least one of aplurality of messages previously stored in a repository for sending tothe second entity upon satisfaction of the condition.
 10. The system ofclaim 9, wherein the executable instructions, when executed by the oneor more processors, further cause the system to: receive a responsemessage from the second entity; and send the response message to one ormore of the plurality of agents of the first entity in a collaborationsession.
 11. The system of claim 9, wherein the software program isconfigured to automatically initiate the message exchange by sendingsignals to get messages from the one or more processors.
 12. The systemof claim 9, wherein the condition for the message exchange includes thesecond entity accessing a web page associated with the first entity. 13.The system of claim 9, wherein the message exchange includes aconversation between the plurality of agents of the first entity and thesecond entity conducted in a real-time collaboration session via theelectronic communication channel.
 14. The system of claim 9, wherein themessage exchange includes a conversation between the plurality of agentsof the first entity and the second entity conducted in an asynchronouscollaboration session via the electronic communication channel.
 15. Thesystem of claim 9, wherein the at least one of the plurality of messagesincludes information regarding a pre-selected set of products orservices selected for presentation to the second entity and associatedwith the condition.
 16. A non-transitory computer-readable mediumstoring executable instructions for establishing an electroniccommunication channel between a plurality of agents of a first entityand a second entity that, when executed by one or more processors of acomputer system, cause the computer system to: receive an indication ofa trigger associated with the second entity; link the second entity tothe plurality of agents of the first entity when in response to theindication of the trigger; provide a software program configured toautomatically initiating a message exchange over the electroniccommunication channel to the second entity; and automatically initiatethe message exchange over the electronic communication channel inresponse to receiving an indication that a condition for the messageexchange has been satisfied by the second entity, wherein initiating themessage exchange includes automatically sending at least one of aplurality of messages previously stored in a repository for sending tothe second entity upon satisfaction of the condition.
 17. Thenon-transitory computer-readable medium of claim 16, wherein theexecutable instructions, when executed by the one or more processors,further cause the computer system to: receive a response message fromthe second entity; and send the response message to one or more of theplurality of agents of the first entity in a collaboration session. 18.The non-transitory computer-readable medium of claim 16, wherein thesoftware program is configured to automatically initiate the messageexchange by sending signals to get messages from the one or moreprocessors.
 19. The non-transitory computer-readable medium of claim 16,wherein the condition for the message exchange includes the secondentity accessing a web page associated with the first entity.
 20. Thenon-transitory computer-readable medium of claim 16, wherein the messageexchange includes a conversation between the plurality of agents of thefirst entity and the second entity conducted in a real-timecollaboration session via the electronic communication channel.